# -*- coding: UTF-8 -*- 
'''
Created on 04/04/2013

@author: rubenbarroso
'''

try:
    num = int("3a")
    print no_existe
except NameError:
    print "La variable no existe"
except ValueError:
    print "El valor no es un numero"



try:
    num = int("3a")
    print no_existe
except (NameError, ValueError):
    print "Ocurrio un error"




try:
    num = 33
except:
    print "Hubo un error!"
else: #Se ejecuta si no se ha producido una excepcion
    print "Todo esta bien" 


x,y = 0,1
try:
    z = x / y
except ZeroDivisionError:
    print "Division por cero"
finally: #Se ejecuta siempre
    print "Limpiando"


########## CREAR EXCEPCIONES PROPIAS:

resultado = 23
class MiError(Exception):
    def __init__(self, valor):
        self.valor = valor
    def __str__(self):
        return "Error " + str(self.valor)
    
try:
    if resultado > 20:
        raise MiError(33)
except MiError, e:
    print e



